草庐IT

xml - Xpath 表达式

全部标签

Javascript Xpath 和默认命名空间

我有一些JavaScript/Xpath无法正常工作。(availableonjsfiddle)看起来我在XML命名空间上做错了什么,阻止我通过节点(标记)名称查询我的元素。如果我尝试查询当前节点的所有子节点,我会毫无问题地找到元素myElement:varxpathResult=xmlDoc.evaluate("child::*",rootElement,nsResolver,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null);varqueryEl;if(queryEl=xpathResult.iterateNext()){alert("chil

javascript - 如何使用 JQuery 修改 XML

我正在尝试使用Javascript修改XML结构中的状态标志。使用在互联网上找到的示例,我相信这应该可行:test=""+""+"6"+"I"+"2012-06-1600:00:00"+""+""更改状态字段的内容:$(test).find("status").text("D")然而,结果是测试没有被修改,仍然包含旧状态I感谢您的回答正确的见解是您需要先转换为XMLObject并对其进行修改。下面是我最终的做法:/*ConvertTexttoXMLObject*/doc=$.parseXML(test)/*Changethefieldsrequired*/$(doc).find('st

javascript - Javascript 中的正则表达式没有它应该的那么贪婪?

我编写了一个简单的代码来捕获字符串中的特定组:/[a-z]+([0-9]+)[a-z]+/gi(nchars,mdigts,kchars).code:varmyString='aaa111bbb222ccc333ddd';varmyRegexp=/[a-z]+([0-9]+)[a-z]+/gi;varmatch=myRegexp.exec(myString);console.log(match)while(match!=null){match=myRegexp.exec(myString);console.log(match)}结果是:["aaa111bbb","111"]["ccc3

javascript - 奇怪的 javascript 表达式的解释是什么?

在JavaScript中,以下代码行给出的答案为1+!{}[true]我不明白怎么办?感谢任何大师的解释。 最佳答案 {}是一个空对象。因此{}[0]或{}[true]或{}[1]等是未定义的添加!将{}[0]转换为boolean,返回相反的值。(undefined变为false,因此返回true)。添加+将其转换为int,因此true变为1。 关于javascript-奇怪的javascript表达式的解释是什么?,我们在StackOverflow上找到一个类似的问题:

javascript - 允许逗号和空格分隔的数字列表的正则表达式

我想用javascript或jquery写一个正则表达式来允许逗号分隔的数字列表或空格分隔的数字或逗号后跟空格分隔的数字或上述任何一项的组合任何不是数字、空格或逗号的东西都必须被拒绝应该通过111,222,333111222333111,222,333111,222,333444555666,111,222,333,不应通过:111,222,3a3a1112223a等等等等我尝试了下面的代码,但当我输入时它们似乎有效3a作为一个数字,它通过了!!!如何?我无法理解我的代码如何让那封信通过。我想拒绝任何不是空格、逗号或数字的内容或者有没有更好的方法不用正则表达式来做到这一点?我在谷歌中查

javascript - 正则表达式匹配 URI 中的 & 号,后跟一个等号而不是另一个 & 号

我的正则表达式知识让我逃避了这个......假设我有一个以URI作为查询参数的URL,ala:http://hostname.com?uri=http://website.com/company/YoYo+&+Co+Inc&type=company...假设我们的uri参数本身不包含任何参数,我想在Javascript中手动解析查询参数,但显然我们嵌入的uri参数中的&符号使得它比简单地拆分所有&符号和从那里运行它。我真正想做的是定义一个正则表达式,该正则表达式仅匹配问号和与号后跟一个等号,然后再跟另一个与号(或行尾)。我想出了这个很接近但也包括非捕获文本,我不确定为什么:[?&](?

javascript - 在 JavaScript 中从正则表达式生成字符串

我认为这可以通过使用暴力生成字符串然后尝试将它们与提供的正则表达式匹配并在匹配时打印来完成。但是有更好的方法吗?正则表达式用于测试字符串是否与模式匹配。我知道这一点。我认为反过来做会很有趣。 最佳答案 如果您使用的是JavaScript,则有Randexp它生成与给定正则表达式匹配的随机字符串。Releasesforbrowser 关于javascript-在JavaScript中从正则表达式生成字符串,我们在StackOverflow上找到一个类似的问题:

javascript - Node + xmldom : How do I change the value of a single XML field in javascript?

使用nodev.0.10.29,Expressv4.12.0和xmldomv0.1.19,我正在尝试执行以下操作:步骤将XML文件读入字符串使用xmldom将字符串转换为XML对象设置default字段到test将XML对象转换回字符串问题问题是在我设置之后字段,它在对象中正确设置,但是当我将它转换为字符串时,字段恢复为旧值(错误)。代码代码如下所示:varfs=require('fs');varDOMParser=require('xmldom').DOMParser;varXMLSerializer=require('xmldom').XMLSerializer;varfilena

javascript - 正则表达式删除所有重复的字符

我正在寻找一个正则表达式,它可以删除字符串中所有重复的字符。我已经使用循环解决了这个问题。只是想知道是否有一个正则表达式可以做同样的事情。这是我目前所拥有的:functiononlyUnique(str){varre=/(.)(?=.*\1)/greturnstr.replace(re,'');}这个字符串:"rciauauc!gcusa_usdiscgaesracg"应该这样结束:"!_de" 最佳答案 您可以使用Array#filter与Array#indexOf和Array#lastIndexOf检查元素是否重复。varstr

javascript - Angular 评估表达式就像它在 HTML 中一样

我正在寻找一个可以在Angular中执行类似操作的函数:vartestValues={name:'JohnDoe',number:15}somefunction('Hello,{{name}},youare{{number}}yearsold',testValues)//returns'Hello,JohnDoe,youare15yearsold'我知道$eval做类似的事情,但它里面不能有双括号。 最佳答案 您可能正在寻找$interpolate服务。文档中的示例:var$interpolate=...;//injectedvar